package com.skt.domain.VO;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 服装分类展示视图对象（VO）
 *
 * 说明：
 * - 用于管理员查询分类列表接口（GET /admin/categories）
 * - 包含父分类名称，便于前端展示层级结构
 * - 不包含敏感字段（如 createdBy、deletedBy、deletedAt 等）
 * - 所有字段均为前端管理界面所需
 */
@Data
@Schema(description = "服装分类信息展示对象")
public class CategoryVO {

    @Schema(description = "分类ID")
    private Long id;

    @Schema(description = "分类名称")
    private String name;

    @Schema(description = "父分类ID，0 表示顶级分类")
    private Long parentId;

    @Schema(description = "父分类名称，顶级分类时为 null")
    private String parentName;

    @Schema(description = "排序值")
    private Integer sortOrder;

    @Schema(description = "状态：1-启用，0-禁用")
    private Byte status;

    @Schema(description = "创建时间")
    private LocalDateTime createdAt;

    @Schema(description = "修改时间")
    private LocalDateTime updatedAt;

    @Schema(description = "删除时间")
    private LocalDateTime deletedAt;
}